package com.xique.door.project.sfm.api;

import com.github.lianjiatech.retrofit.spring.boot.annotation.RetrofitClient;
import retrofit2.http.Body;
import retrofit2.http.POST;

import java.util.Map;

@RetrofitClient(baseUrl = "${sfm.url}")
public interface ISfmApi {

    /**
     * 查询省份
     * @param json
     * @return
     */
    @POST("DataItem/GetProvince")
    String getProvince(@Body Map<String, String> json);

    /**
     * 查询城市
     * @param json
     * @return
     */
    @POST("DataItem/GetCity")
    String getCity(@Body Map<String, String> json);

    /**
     * 查询省份城市内社区
     * @param json
     * @return
     */
    @POST("DataItem/GetCommunityByCity")
    String getCommunityByCity(@Body Map<String, String> json);

    /**
     * 查询社区所有楼栋
     * @param json
     * @return
     */
    @POST("Building/GetBuildingByCommunityNo")
    String getBuildingByCommunityNo(@Body Map<String, String> json);

    /**
     * 查询楼栋内所有房屋
     * @param json
     * @return
     */
    @POST("House/GetHouseByBuildingNo")
    String getHouseByBuildingNo(@Body Map<String, String> json);

    /**
     * 查询房屋内住户
     * @param json
     * @return
     */
    @POST("People/GetListByHouseNo")
    String getListByHouseNo(@Body Map<String, String> json);

    /**
     * 添加住户信息
     * @param json
     * @return
     */
    @POST("People/InsertPeople")
    String insertPeople(@Body Map<String, String> json);

    /**
     * 绑定住户
     * @param json
     * @return
     */
    @POST("People/BindRelPeopleHouse")
    String bindRelPeopleHouse(@Body Map<String, String> json);

    /**
     * 删除住户信息
     * @param json
     * @return
     */
    @POST("People/DeletePeople")
    String deletePeople(@Body Map<String, String> json);

    /**
     * 获取设备列表
     * @param json
     * @return
     */
    @POST("Device/GetDeviceList")
    String getDeviceList(@Body Map<String, String> json);

    /**
     * 获取设备在线状态
     * @author shd
     * @date 2022/5/27 10:51
     * @param json
     * @return java.lang.String
     */
    @POST("Device/GetDeviceOnline")
    String getDeviceOnline(@Body Map<String, String> json);

    /**
     * 获取设备在线状态(批量)
     * @author shd
     * @date 2022/5/27 10:51
     * @param json
     * @return java.lang.String
     */
    @POST("Device/GetDeviceListOnline")
    String getDeviceListOnline(@Body Map<String, String> json);

    /**
     * 设备开门
     * @param json
     * @return
     */
    @POST("Device/OpenDoor")
    String openDoor(@Body Map<String, String> json);
}
